1. Field of the Invention
This invention pertains to the arts of selective access and download of archived compressed files via computer networks such as the Internet and intranets. This invention relates in particular to standard multi-file compression archives, such as ZIP, GZIP, and CAB files, and the ability to access files contained within those archives on an individual or group basis via computer networks.
2. Description of the Related Art
As shown in FIG. 4, client/server computer systems are well known within the art, including those which are interconnected via intranets and Internets. A client computer (60) may access (61) a web server computer (64) through the Internet or xe2x80x9cworld wide webxe2x80x9d (62) using a dial-up modem connection, cable modem, Asymmetric Digital Subscriber Loop (xe2x80x9cADSLxe2x80x9d), Integrated Services Digital Network (xe2x80x9cISDNxe2x80x9d) or other data connection. Likewise, the web server computer (64) may interface (63) to the Internet using the same data connection options, but more commonly through much higher data rate connections such as T1 or T3 digital transmission lines. A client computer may also access a xe2x80x9clocalxe2x80x9d web server or corporate intranet server via an intranet (65), which may be a local area network (xe2x80x9cLANxe2x80x9d). A typical client computer is provided with a keyboard (81) for receiving input and commands from a user, and a display (80) for outputting information to a user, as well as optional pointing devices such as a mouse or pointing pad.
Web xe2x80x9cbrowsersxe2x80x9d are commonly used on networked client computers in order to access a web server. FIG. 5 shows the functional organization of the software and hardware components of a client computer (60) utilized when a web server is accessed to retrieve stored files. An Internet browser program (71), such as Microsoft Explorer or Netscape Navigator, communicates to a network communications protocol stack (73), such as Transmission Control Protocol/Internet Protocol (xe2x80x9cTCP/IPxe2x80x9d). The protocol stack controls and communicates to a network interface (xe2x80x9cNICxe2x80x9d), such as an Ethernet LAN interface card or a modem. The browser program (71) may store (75) files which have been downloaded from servers on the network on the system hard drive(s) or in system memory (76).
Various file archive and compression methods and systems are well known within the arts of computer and networking technology. Public standards or conventions for the compression and archiving of data files such as xe2x80x9cZIPxe2x80x9d files are available, as well as certain proprietary formats such as the Microsoft xe2x80x9ccabinetxe2x80x9d file format.
A zip file may contain only one compressed data file or multiple data files. The Internet request for comment (xe2x80x9cRFCxe2x80x9d) 1952, a public document, discloses in detail the format and organization of a zip file developed by the Free Software Foundation, called GZIP. FIG. 1 shows the format of a GZIP file (1), including a header section (2), the compressed data blocks (3), and a tail section (4). The header section (2) contains information to identify the file as a GZIP file in the ID1 through ID3 elements, an indication of the type of compression used (i.e. deflation, LZW, etc.) in the compression mode element, a set of flags to indicate optional parameters that may be included in the GZIP file, a record of the operating system with which the original file was compatible, the original file name, a comment possibly entered by the operator, and a CRC value. Following the header section (2) is the actual compressed file data organized in blocks (3), which is in turn followed by another CRC and a record of the original, uncompressed file size.
In order to store multiple compressed data files in a single archive file, the common technique is to repeat the sequence of elements as given in FIG. 1. This allows for individual compressed files to be extracted and decompressed without requiring all the archived files to the extracted and decompressed.
Many Internet and intranet servers provide downloadable archive files. For example, many software corporations provide downloadable demonstration copies of their products on their corporate web sites. This allows potential customers to use a web browser to select products to preview, download the demo versions, decompress or xe2x80x9cunzipxe2x80x9d the files and install the software products. As seen in FIG. 5, an archive and compression utility program (78) such as Pkware Incorporated""s PKUNZIP may be used to retrieve an archive file from system memory or hard drive (76) and to extract and decompress the files contained therein. Alternatively, the browser program (71) may launch (77) the utility program (78) directly, or may use a browser xe2x80x9cplug-inxe2x80x9d (72) to extract and decompress files from the downloaded archive file.
FIG. 2 shows the typical process or method used to retrieve these archive files. An Internet or intranet client computer uses a web browser, such as Netscape Navigator or Microsoft Explorer, to select (21) a page or address on an web server to be viewed. When the address or page is selected, a series of commands and responses (22) are exchanged between the web server and the web browser via the Internet or an intranet. This type of xe2x80x9cweb browsingxe2x80x9d is well known within the art.
The web server accesses (23) the requested web address or web page, and returns (24) one or more web objects, typically in the form of Hypertext Markup Language (xe2x80x9cHTMLxe2x80x9d) documents, JAVA scripts, and graphics files such as Compuserve Graphics files (xe2x80x9cGIFxe2x80x9d) and Joint Photographics Experts Group (xe2x80x9cJPEGxe2x80x9d) files. The operator of the web browser reviews the web page which he or she has received, and selects (25) a hyperlink which points to an archive file such as a ZIP file. The operator may be presented with a choice to download and save the file to the client computer""s disk drive, or to download the file and immediately launch an application associated with the file, such as PKUNZIP from Pkware, Inc.
Then, a request (26) is made to the web server to download the indicated archive file. In response to this request (26), the web server accesses (27) the entire archive file and begins transmitting this file to the web browser via the computer network. If the archive file is large in size relative to the data transfer rate between the web server and the client computer, the download may require several minutes to hours to complete.
Finally, after the entire file has been downloaded, the file is either saved (31) or the file is xe2x80x9copenedxe2x80x9d (33) using the registered application program, such as PKUNZIP, on the client computer. If the archive file contains multiple compressed files, the operator is presented for the first time during the process with a list of the contained file names, lengths, and comments as the utility program extracts and displays those elements from the archive file. The operator can then selectively extract and decompress one or more of the multiple files as desired.
The problems that arise with this process are the time required to retrieve just one or a few of the files contained in the archive file, and the disk space consumed by the storage of unwanted files. With the prior art method, an operator may ultimately only desire to access one small file that is contained in a much larger multi-file archive file. But, in order to access the individual file, the operator may have to download the entire archive file and then extract and decompress the single file contained within. This means that the operator may have to wait for several minutes to hours to receive a file contained within an archive file, which, if transmitted individually, may only require a few seconds to minutes to download. This repeated many times a day or week, and multiplied by many users on a network (such as a corporate LAN or intranet) accumulates to considerable wasted human operation hours as well as significant wasted computer network bandwidth, disk storage and memory.
Therefore, there exists a need in the art for a method to selectively retrieve compressed data files over computer networks which are stored within multiple-file archive files. There further exists a need in the art for this method to provide the user with a listing of the files available within an archive file without requiring a full download of the actual archive file, and to do so in a timely manner to minimize operator wait time. Finally, there exists a need in the art for this method to be realizable and compatible with existing equipment and software commonly used for computer network communications and browsing, and to minimize the need for special software or hardware to practice the method.
The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of a preferred embodiment of the invention, as illustrated in the accompanying drawings wherein like reference numbers represent like parts of the invention.
The method disclosed herein provides the capability of a standard Internet browsing utility such as Netscape""s Navigator or Microsoft""s Explorer, to display the contents of a web-stored archive file and to selectively download compressed files from within the archive file without the need for a special browser xe2x80x9cplug-inxe2x80x9d and without the need to download the entire archive file. By providing file listing and extraction fimctions on the web server, and by delivering the file listing to the browser using a common and standard interface such as HTML, the method can be realized using common technology on web servers and without need for changes to or additions to millions of client computers"" software.